package com.elai.baseconfig.domain;

import com.elai.common.annotation.Excel;
import com.elai.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.List;

/**
 * 事件项目对象 event_item
 *
 * @author elai
 * @date 2021-04-03
 */
public class EventItemDO extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    private Long eventId;

    /** 事件类型 */
    @Excel(name = "事件类型")
    private String eventType;

    /** 事件项 */
    @Excel(name = "事件项")
    private String eventItemCode;

    /** 事件项名称 */
    @Excel(name = "事件项名称")
    private String eventItemName;


    private String eventItemExpression;

    private List<EventItemPropertyDO> itemPropertyDOList;

    private List<EventMethodDO> itemMethodDOList;

    /** 取值类型 */
    private String valueType;
    /** 状态 */
    @Excel(name = "状态")
    private String status;

    //事件函数
    private String eventMethod;

    private int rowNum;

    /** 租户ID */
    private String lesseeId;

    private String categoryType;	//事件分类virtual虚拟normal普通
    private String dictData;	//字典
    private String itemExpression;	//表达式
    private String remark;	//备注

    public String getCategoryType() {
        return categoryType;
    }

    public void setCategoryType(String categoryType) {
        this.categoryType = categoryType;
    }

    public String getDictData() {
        return dictData;
    }

    public void setDictData(String dictData) {
        this.dictData = dictData;
    }

    public String getItemExpression() {
        return itemExpression;
    }

    public void setItemExpression(String itemExpression) {
        this.itemExpression = itemExpression;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getLesseeId() {
        return lesseeId;
    }

    public void setLesseeId(String lesseeId) {
        this.lesseeId = lesseeId;
    }

    public int getRowNum() {
        return rowNum;
    }

    public void setRowNum(int rowNum) {
        this.rowNum = rowNum;
    }

    public String getErrorMessage() {
        return errorMessage;
    }

    public void setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
    }

    private String errorMessage;

    public String getEventItemName() {
        return eventItemName;
    }

    public void setEventItemName(String eventItemName) {
        this.eventItemName = eventItemName;
    }


    public String getEventMethod() {
        return eventMethod;
    }

    public void setEventMethod(String eventMethod) {
        this.eventMethod = eventMethod;
    }

    public void setId(Long id)
    {
        this.id = id;
    }
    public Long getId()
    {
        return id;
    }

    public void setEventType(String eventType)
    {
        this.eventType = eventType;
    }
    public String getEventType()
    {
        return eventType;
    }

    public void setEventItemCode(String eventItemCode)
    {
        this.eventItemCode = eventItemCode;
    }
    public String getEventItemCode()
    {
        return eventItemCode;
    }



    public String getValueType() {
        return valueType;
    }

    public void setValueType(String valueType) {
        this.valueType = valueType;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }
    public String getStatus()
    {
        return status;
    }

    public List<EventItemPropertyDO> getItemPropertyDOList() {
        return itemPropertyDOList;
    }

    public void setItemPropertyDOList(List<EventItemPropertyDO> itemPropertyDOList) {
        this.itemPropertyDOList = itemPropertyDOList;
    }
    public String getEventItemExpression() {
        return eventItemExpression;
    }

    public void setEventItemExpression(String eventItemExpression) {
        this.eventItemExpression = eventItemExpression;
    }

    public List<EventMethodDO> getItemMethodDOList() {
        return itemMethodDOList;
    }

    public void setItemMethodDOList(List<EventMethodDO> itemMethodDOList) {
        this.itemMethodDOList = itemMethodDOList;
    }

    public Long getEventId() {
        return eventId;
    }

    public void setEventId(Long eventId) {
        this.eventId = eventId;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("eventType", getEventType())
            .append("eventItemCode", getEventItemCode())
            .append("eventItemName", getEventItemName())
            .append("status", getStatus())
            .toString();
    }
}
